// 引入依赖
var express = require("express");
var app = express();
// 引入路由
var router = require("./router");
var router_grant = require("./router/grant");
var router_deal = require("./router/deal");
// 引入配置文件
var config = require("./app.config");
var port = config.port;
// 文件上传
var multer  = require('multer');
var storage = multer.diskStorage({
    destination: function (req, file, cb) {
        cb(null, 'upload/')
    },
    filename: function (req, file, cb) {
        var filetype = file.originalname.split('.').splice(-1);
        cb(null, file.fieldname + '.' + filetype)
    }
});
var upload = multer({ storage });
// session
var session = require('express-session');
app.use(session({
    secret: 'keyboard cat',
    resave: false,
    saveUninitialized: true
}));
// ejs
app.set("view engine", "ejs");
// 静态目录
app.use(express.static("./public"));


// 提供xx列表
app.get("/list/:target", router_grant.list);
// 处理文件上传
app.post("/upload", upload.fields([{name: 'apply'}, {name: 'score'}, {name: 'judge'}]), router_deal.upload);
// 删除数据
app.post("/delete", router_deal.delete);



// 测试
app.get("/test", router.test);


// 显示运动员导入页面
app.get("/importPlayer", router.showImportPlayer);
// 显示运动员列表页面
app.get("/playerList", router.showPlayerList);


// 显示新建运动项目页面
app.get("/newEvent", router.showNewEvent);
// 处理新建运动项目表单
app.post("/newEvent", router_deal.newEvent);
// 显示运动项目列表页面
app.get("/eventList", router.showEventList);



// 显示新建比赛页面
app.get("/newGame", router.showNewGame);
// 处理新建比赛表单
app.post("/newGame", router_deal.newGame);

// 显示新建裁判页面
// app.get("/newJudge", router.showNewJudge);
// 处理新建裁判表单
// app.post("/newJudge", router_deal.newJudge);
// 显示裁判列表页面
app.get("/judgeList", router.showJudgeList);
// 显示裁判导入页面
app.get("/importJudge", router.showImportJudge);

// 显示比赛安排页面
app.get("/arrangeList", router.showArrangeList);


// 显示成绩导入页面
app.get("/importScore", router.showImportScore);
// 显示运动员列表页面
app.get("/scoreList", router.showScoreList);


// 录入运动员得分
app.post("/enterPlayerMark", router_deal.enterPlayerMark);


// 显示比赛结果统计页面
app.get("/statistic", router.showStatistic);

// 显示登录页
app.get("/signIn", router.showSignIn);
// 用户登录
app.post("/signIn", router_deal.signIn);
// 退出登录
app.get("/signOut", router_deal.signOut);

// 显示管理员页
app.get("/admin", router.showAdmin);

// 显示运动员页
app.get("/player", router.showPlayer);


app.get("/", router.showIndex);        // 显示首页



app.listen(port, function () {
    console.log("Your server is running at 127.0.0.1:" + port);
});
